package com.ruoyi.fjtseac.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.fjtseac.domain.dto.AudioDto;
import com.ruoyi.fjtseac.domain.po.Audio;
import com.ruoyi.fjtseac.domain.vo.AudioVo;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * @author zzl
 * @date 2022/7/7 16:57
 */
public interface AudioService extends IService<Audio> {

    /**
     * 上传音频，保存文件到文件夹，保存url到数据库
     * @param audioDto 音频对象
     * @return
     */
    AjaxResult upload(AudioDto audioDto, String uuid);

    /**
     * 删除音频，并删除数据库中的记录
     * @param id 音频id
     * @return
     */
    AjaxResult delete(Integer id);

    /**
     * 通过关键词查询并分页
     * @param param 查询关键词
     * @param pageNum 当前页码
     * @param pageSize 每页最大记录数
     * @return
     */
    AjaxResult search(String param, int pageNum, int pageSize);

    /**
     * 获取音频上传进度
     * @param uuid 文件唯一标识
     * @return
     */
    AjaxResult getProgress(String uuid);
}
